{"id":3265,"date":"2019-12-09T21:59:13","date_gmt":"2019-12-09T20:59:13","guid":{"rendered":"https:\/\/adsl_zapas.dkonto.pl\/?p=3265"},"modified":"2020-12-10T21:45:25","modified_gmt":"2020-12-10T20:45:25","slug":"blynk-piny-virtualne-virtual-pins-blynktimer","status":"publish","type":"post","link":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/","title":{"rendered":"Blynk, piny virtualne (Virtual Pins), BlynkTimer"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Piny virtualne<\/strong> to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 <strong>Blynk<\/strong> a urz\u0105dzeniami.  Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQ<\/li><li>http:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins<\/li><\/ul>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; light: false; title: Kod:; toolbar: true; notranslate\" title=\"Kod:\">\nBLYNK_WRITE(V0)\n{ \nint pinValue = param.asInt();\nSerial.println(pinValue);\n}\n\nBLYNK_WRITE(V1)\n{ \nSerial.println(param.asStr());\n}\n\nBLYNK_WRITE(V2)\n{ \nSerial.println(param.asFloat());\n}\n\nvoid loop()\n{\nBlynk.run();\n}\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">W <strong>aplikacji<\/strong> BLYNK w telefonie tworzymy dwa suwaki na pinach <strong>V0, V1<\/strong> oraz przycisk (button) na <strong>V2<\/strong>. <br>Przesuwaj\u0105c <strong>V0<\/strong> wysy\u0142amy z p\u0142ytki po\u0142ow\u0119 warto\u015bci na <strong>V1<\/strong> (suwak oczywi\u015bcie reaguje). Przycisk <strong>V2<\/strong> ustawia oba suwaki na warto\u015bci 1000. U\u017cycie wirtualnych pin\u00f3w b\u0119dzie przydatne przy ustawianiu na przyk\u0142ad scen o\u015bwietleniowych w pokoju.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: cpp; light: false; title: Kod:; toolbar: true; notranslate\" title=\"Kod:\">\n#include &lt;ESP8266WiFi.h&gt;\n#include &lt;BlynkSimpleEsp8266.h&gt;\n#include &quot;config.h&quot; \/\/auth, ssid, pass\n\n#define BLYNK_PRINT Serial\n\nBlynkTimer timer;\n\nvoid setup()\n{\n  \/\/ Debug console\n  Serial.begin(9600);\n\/\/  pinMode(buttonPin,INPUT);\n\/\/  pinMode(ledPin,OUTPUT);\n\n\n  Blynk.begin(auth, ssid, pass);\n  \/\/ You can also specify server:\n  \/\/Blynk.begin(auth, ssid, pass, &quot;blynk-cloud.com&quot;, 80);\n  \/\/Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080);\n}\n\nvoid loop()\n{\nBlynk.run();\ntimer.run();\n}  \n\nBLYNK_WRITE(V0)\n{\nint pinValue = param.asInt();\nBlynk.virtualWrite(V1, pinValue\/2); \nSerial.println(pinValue);\n}\n\nBLYNK_WRITE(V2)\n{\nint pinValue = param.asInt();\nSerial.println(pinValue);\nBlynk.virtualWrite(V0, 1000); \nBlynk.virtualWrite(V1, 1000); \n\n}\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\">BlynkTimer<\/h2>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"wp-block-paragraph\">It\u2019s important to send data in intervals and keep the void loop() as clean as possible.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>BlynkTimer<\/code>&nbsp;allows you to send data periodically with given intervals not interfering with Blynk library routines&nbsp;<code>Blynk Timer<\/code>&nbsp;inherits&nbsp;<a href=\"http:\/\/playground.arduino.cc\/Code\/SimpleTimer\">SimpleTimer Library<\/a>, a well known and widely used library to time multiple events on hardware.&nbsp;<code>BlynkTimer<\/code>&nbsp;is included in Blynk library by default and there is no need to install SimpleTimer separately or include&nbsp;<code>SimpleTimer.h<\/code><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>A single&nbsp;<code>BlynkTimer<\/code>&nbsp;object allows to schedule up to 16 timers<\/li><li>Improved compatibility with boards like&nbsp;<code>Arduino 101<\/code>,&nbsp;<code>Intel Galileo<\/code>, etc.<\/li><li>When a timer struggles to run multiple times (due to a blocked&nbsp;<code>loop<\/code>), it just skips all the missed intervals, and calls your function only once. This differs from&nbsp;<code>SimpleTimer<\/code>, which could call your function multiple times in this scenario.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For more information on timer usage, please see:&nbsp;<a href=\"http:\/\/playground.arduino.cc\/Code\/SimpleTimer\">http:\/\/playground.arduino.cc\/Code\/SimpleTimer<\/a><br>And here is a BlynkTimer&nbsp;<a href=\"https:\/\/github.com\/blynkkk\/blynk-library\/blob\/master\/examples\/GettingStarted\/PushData\/PushData.ino#L30\">example sketch<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Please also remember that a single&nbsp;<code>BlynkTimer<\/code>&nbsp;can schedule many timers, so most probably you need only one instance of BlynkTimer in your sketch.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Przyk\u0142ad<\/h3>\n<\/div><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Po w\u0142\u0105czeniu button V2 miga dioda V3 (WidgetLED) i Built in LED r\u00f3wnocze\u015bnie timer w\u0142\u0105cza Relay (D1) i odlicza 10 sekund po tym czasie wy\u0142\u0105cza Relay i migaj\u0105cy led. <br>Kod pochodzi <strong><a href=\"https:\/\/community.blynk.cc\/t\/c-blynk-code-examples-for-basic-tasks-work-in-progress\/22596\/23\">st\u0105d<\/a><\/strong>. Doda\u0142em tylko blynkowy <strong>WidgetLED<\/strong><\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; light: false; title: Kod:; toolbar: true; notranslate\" title=\"Kod:\">\n\/*\n * \n * Blynk Testowy serwer publiczny\n * Po w\u0142\u0105czeniu button V2 miga dioda V3 (WidgetLED) i Built in LED \n * r\u00f3wnocze\u015bnie timer w\u0142\u0105cza Relay (D1) i odlicza 10 sekund \n * po tym czasie wy\u0142\u0105cza Relay i migaj\u0105cy led\n * \n *\/\n#define BLYNK_PRINT Serial\n\n#include &amp;lt;ESP8266WiFi.h&gt;\n#include &amp;lt;BlynkSimpleEsp8266.h&gt;\n#include &quot;config.h&quot; \/\/auth, ssid, pass\n\nint Latch;\nint Flag;\n#define DeviceLED 2 \/\/ Built in LED for Wemos or NodeMCU v3, Or 16 for NodeMCU v1\n#define LatchRelay D1 \/\/  GPIO12 or D6\n\nBlynkTimer timer;\n\nWidgetLED led(V3);\n\nvoid setup() {\n  pinMode(DeviceLED, OUTPUT);\n  pinMode(LatchRelay, OUTPUT);\n  WiFi.begin(ssid, pass);\n\/\/  Blynk.config(auth, server, port);\n\/\/  Blynk.connect();\n    Blynk.begin(auth, ssid, pass);\n}\n\n\n\n\/\/===== LATCH(Relay) &amp;amp; LED PULSE - BLYNK Functions =====\nBLYNK_WRITE(V2)  \/\/ Virtual button on V0 to activate Relay_LED pulses\n{\n  \/\/Serial.println(&quot;Latch LED&quot;);\n  Latch = param.asInt();\n  if (Latch == 1 &amp;amp;&amp;amp; Flag == 0) {\n    Flag = 1;  \/\/ Keeps from allowing button press more then once while relay activated\n    digitalWrite(LatchRelay, HIGH); \/\/ Activate Relay\n    timer.setTimer(1000L, blinkMyLEDon, 10);  \/\/ Pulse LED routine (LedON\/LedOFF) 10 times\n    timer.setTimeout(10000L, RelayOFF);  \/\/ Deactivare Relay after 10 seconds\n  }  \/\/ END if\n}  \/\/ END Blynk Function\n\nvoid RelayOFF() {\n  digitalWrite(LatchRelay, LOW);\n  Flag = 0;  \/\/ reset flag after relay disables\n}  \/\/ END Function\n\nvoid blinkMyLEDon() {\n  digitalWrite(DeviceLED, LOW); \/\/ Turn ON built in LED (triggered LOW)\n  led.on();\n  timer.setTimeout(500L, blinkMyLEDoff);  \/\/ Run LED OFF routine once in 1\/2 second\n}  \/\/ END Function\n\nvoid blinkMyLEDoff() {\n  digitalWrite(DeviceLED, HIGH); \/\/ Turn OFF built in LED (triggered LOW)\n  led.off();\n}  \/\/ END Function\n\n\n\nvoid loop() {\n  Blynk.run();\n  timer.run(); \/\/ This keeps checking the timers to see if then need to be processed\n}\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\">SimpleTimer() Functions<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The constructor. You usually need only one&nbsp;SimpleTimer&nbsp;object in a sketch.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>SimpleTimer timer;<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">int setInterval(long d, timer_callback f)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Call function f every d milliseconds. The callback function must be declared as&nbsp;<code>void f()<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">void repeatMe() {\n    \/\/ do something\n}\n\ntimerId = timer.setInterval(1000, repeatMe);\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">int setTimeout(long d, timer_callback f)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Call function f once after d milliseconds. The callback function must be declared as&nbsp;<code>void f()<\/code>. After f has been called, the interval is deleted, therefore the value timerId is no longer valid.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">void callMeLater() {\n    \/\/ do something\n}\n\ntimerId = timer.setTimeout(1000, callMeLater);\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">int setTimer(long d, timer_callback f, int n)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Call function f every d milliseconds for n times. The callback function must be declared as&nbsp;<code>void f()<\/code>. After f has been called the specified number of times, the interval is deleted, therefore the value timerId is no longer valid.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">void repeatMeFiveTimes() {\n    \/\/ do something\n}\n\ntimerId = timer.setTimer(1000, repeatMeFiveTimes, 5);<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">boolean isEnabled(int timerId)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Returns true if the specified timer is enabled<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">if(timer.isEnabled(timerId) {\n    \/\/ do domething\n}<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">void enable(int timerId)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Enables the specified timer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>timer.enable(timerId);<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">void disable(int timerId)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Disables the specified timer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>timer.disable(timerId);<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">void toggle(int timerId)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Enables the specified timer if it&#8217;s currently disabled, and vice-versa.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>timer.toggle(timerId);<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">void restartTimer(int timerId)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Causes the specified timer to start counting from &#8220;now&#8221;, i.e. the instant when restartTimer is called. The timer callback is not fired. A use case for this function is for example the implementation of a watchdog timer (pseudocode follows).<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">void wdCallback() {\n    alert user or perform action to restore\n    program state (e.g. reset the microprocessor)\n}\n\nwd_timer_id;\n\nvoid setup() {\n    wd_timer_id = timer.setInterval(10000, wdCallback);\n}\n\nvoid loop() {\n    timer.run();\n\n    big complex critical code\n\n    timer.restartTimer(wd_timer_id);\n}<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">void deleteTimer(int timerId)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Free the specified timerId slot. You should need to call this only if you have interval slots that you don&#8217;t need anymore. The other timer types are automatically deleted once the specified number of repetitions have been executed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">void getNumTimers()<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Return the number of used slots in a timer object.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>n = timer.getNumTimers();<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQ http:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins W aplikacji BLYNK w telefonie&#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[95,5],"tags":[94,98],"class_list":["post-3265","post","type-post","status-publish","format-standard","hentry","category-blynk","category-esp8266","tag-blynk","tag-timer"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQhttp:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"yarogniew_anpl\"\/>\n\t<link rel=\"canonical\" href=\"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Arduino dla strasznych lamer\u00f3w - www.arduino.net.pl\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\u00f3w\" \/>\n\t\t<meta property=\"og:description\" content=\"Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQhttp:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach\" \/>\n\t\t<meta property=\"og:url\" content=\"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-12-09T20:59:13+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-12-10T20:45:25+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\u00f3w\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQhttp:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#blogposting\",\"name\":\"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\\u00f3w\",\"headline\":\"Blynk, piny virtualne (Virtual Pins), BlynkTimer\",\"author\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/author\\\/yarogniew_anpl\\\/#author\"},\"publisher\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#articleImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/daf42a0de5021721fc53447fe7cf000e09055bf4fb96ef98490902a9e4de3bf2?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"yarogniew_anpl\"},\"datePublished\":\"2019-12-09T21:59:13+01:00\",\"dateModified\":\"2020-12-10T21:45:25+01:00\",\"inLanguage\":\"pl-PL\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#webpage\"},\"isPartOf\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#webpage\"},\"articleSection\":\"Blynk, ESP8266, Blynk, timer\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/#listItem\",\"name\":\"ELEKTRONIKA\"}},{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/#listItem\",\"position\":2,\"name\":\"ELEKTRONIKA\",\"item\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/esp8266\\\/#listItem\",\"name\":\"ESP8266\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/esp8266\\\/#listItem\",\"position\":3,\"name\":\"ESP8266\",\"item\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/esp8266\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#listItem\",\"name\":\"Blynk, piny virtualne (Virtual Pins), BlynkTimer\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/#listItem\",\"name\":\"ELEKTRONIKA\"}},{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#listItem\",\"position\":4,\"name\":\"Blynk, piny virtualne (Virtual Pins), BlynkTimer\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/category\\\/elektronika\\\/esp8266\\\/#listItem\",\"name\":\"ESP8266\"}}]},{\"@type\":\"Person\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/#person\",\"name\":\"yarogniew_anpl\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/daf42a0de5021721fc53447fe7cf000e09055bf4fb96ef98490902a9e4de3bf2?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"yarogniew_anpl\"}},{\"@type\":\"Person\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/author\\\/yarogniew_anpl\\\/#author\",\"url\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/author\\\/yarogniew_anpl\\\/\",\"name\":\"yarogniew_anpl\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/daf42a0de5021721fc53447fe7cf000e09055bf4fb96ef98490902a9e4de3bf2?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"yarogniew_anpl\"}},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#webpage\",\"url\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/\",\"name\":\"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\\u00f3w\",\"description\":\"Piny virtualne to bardzo wa\\u017cne narz\\u0119dzie komunikacji mi\\u0119dzy aplikacj\\u0105 Blynk a urz\\u0105dzeniami. Poni\\u017cej tutorial i strona z kr\\u00f3tkim wyja\\u015bnieniem pracy z virtualnymi pinami. https:\\\/\\\/www.youtube.com\\\/watch?v=iueWEkM6cuQhttp:\\\/\\\/help.blynk.cc\\\/en\\\/articles\\\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach\",\"inLanguage\":\"pl-PL\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/#website\"},\"breadcrumb\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/blynk-piny-virtualne-virtual-pins-blynktimer\\\/#breadcrumblist\"},\"author\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/author\\\/yarogniew_anpl\\\/#author\"},\"creator\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/index.php\\\/author\\\/yarogniew_anpl\\\/#author\"},\"datePublished\":\"2019-12-09T21:59:13+01:00\",\"dateModified\":\"2020-12-10T21:45:25+01:00\"},{\"@type\":\"WebSite\",\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/#website\",\"url\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/\",\"name\":\"Arduino dla strasznych lamer\\u00f3w\",\"description\":\"www.arduino.net.pl\",\"inLanguage\":\"pl-PL\",\"publisher\":{\"@id\":\"http:\\\/\\\/adsl_zapas.dkonto.pl\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\u00f3w","description":"Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQhttp:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach","canonical_url":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#blogposting","name":"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\u00f3w","headline":"Blynk, piny virtualne (Virtual Pins), BlynkTimer","author":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/author\/yarogniew_anpl\/#author"},"publisher":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/#person"},"image":{"@type":"ImageObject","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/daf42a0de5021721fc53447fe7cf000e09055bf4fb96ef98490902a9e4de3bf2?s=96&d=identicon&r=g","width":96,"height":96,"caption":"yarogniew_anpl"},"datePublished":"2019-12-09T21:59:13+01:00","dateModified":"2020-12-10T21:45:25+01:00","inLanguage":"pl-PL","mainEntityOfPage":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#webpage"},"isPartOf":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#webpage"},"articleSection":"Blynk, ESP8266, Blynk, timer"},{"@type":"BreadcrumbList","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl#listItem","position":1,"name":"Home","item":"http:\/\/adsl_zapas.dkonto.pl","nextItem":{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/#listItem","name":"ELEKTRONIKA"}},{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/#listItem","position":2,"name":"ELEKTRONIKA","item":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/","nextItem":{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/esp8266\/#listItem","name":"ESP8266"},"previousItem":{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl#listItem","name":"Home"}},{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/esp8266\/#listItem","position":3,"name":"ESP8266","item":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/esp8266\/","nextItem":{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#listItem","name":"Blynk, piny virtualne (Virtual Pins), BlynkTimer"},"previousItem":{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/#listItem","name":"ELEKTRONIKA"}},{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#listItem","position":4,"name":"Blynk, piny virtualne (Virtual Pins), BlynkTimer","previousItem":{"@type":"ListItem","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/esp8266\/#listItem","name":"ESP8266"}}]},{"@type":"Person","@id":"http:\/\/adsl_zapas.dkonto.pl\/#person","name":"yarogniew_anpl","image":{"@type":"ImageObject","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/daf42a0de5021721fc53447fe7cf000e09055bf4fb96ef98490902a9e4de3bf2?s=96&d=identicon&r=g","width":96,"height":96,"caption":"yarogniew_anpl"}},{"@type":"Person","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/author\/yarogniew_anpl\/#author","url":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/author\/yarogniew_anpl\/","name":"yarogniew_anpl","image":{"@type":"ImageObject","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/daf42a0de5021721fc53447fe7cf000e09055bf4fb96ef98490902a9e4de3bf2?s=96&d=identicon&r=g","width":96,"height":96,"caption":"yarogniew_anpl"}},{"@type":"WebPage","@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#webpage","url":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/","name":"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\u00f3w","description":"Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQhttp:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach","inLanguage":"pl-PL","isPartOf":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/#website"},"breadcrumb":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/#breadcrumblist"},"author":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/author\/yarogniew_anpl\/#author"},"creator":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/author\/yarogniew_anpl\/#author"},"datePublished":"2019-12-09T21:59:13+01:00","dateModified":"2020-12-10T21:45:25+01:00"},{"@type":"WebSite","@id":"http:\/\/adsl_zapas.dkonto.pl\/#website","url":"http:\/\/adsl_zapas.dkonto.pl\/","name":"Arduino dla strasznych lamer\u00f3w","description":"www.arduino.net.pl","inLanguage":"pl-PL","publisher":{"@id":"http:\/\/adsl_zapas.dkonto.pl\/#person"}}]},"og:locale":"pl_PL","og:site_name":"Arduino dla strasznych lamer\u00f3w - www.arduino.net.pl","og:type":"article","og:title":"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\u00f3w","og:description":"Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQhttp:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach","og:url":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/","article:published_time":"2019-12-09T20:59:13+00:00","article:modified_time":"2020-12-10T20:45:25+00:00","twitter:card":"summary_large_image","twitter:title":"Blynk, piny virtualne (Virtual Pins), BlynkTimer - Arduino dla strasznych lamer\u00f3w","twitter:description":"Piny virtualne to bardzo wa\u017cne narz\u0119dzie komunikacji mi\u0119dzy aplikacj\u0105 Blynk a urz\u0105dzeniami. Poni\u017cej tutorial i strona z kr\u00f3tkim wyja\u015bnieniem pracy z virtualnymi pinami. https:\/\/www.youtube.com\/watch?v=iueWEkM6cuQhttp:\/\/help.blynk.cc\/en\/articles\/512061-what-is-virtual-pins BLYNK_WRITE(V0) { int pinValue = param.asInt(); Serial.println(pinValue); } BLYNK_WRITE(V1) { Serial.println(param.asStr()); } BLYNK_WRITE(V2) { Serial.println(param.asFloat()); } void loop() { Blynk.run(); } W aplikacji BLYNK w telefonie tworzymy dwa suwaki na pinach"},"aioseo_meta_data":{"post_id":"3265","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2022-08-02 13:12:53","updated":"2025-07-15 10:08:27","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"http:\/\/adsl_zapas.dkonto.pl\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/\" title=\"ELEKTRONIKA\">ELEKTRONIKA<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/esp8266\/\" title=\"ESP8266\">ESP8266<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tBlynk, piny virtualne (Virtual Pins), BlynkTimer\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"http:\/\/adsl_zapas.dkonto.pl"},{"label":"ELEKTRONIKA","link":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/"},{"label":"ESP8266","link":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/category\/elektronika\/esp8266\/"},{"label":"Blynk, piny virtualne (Virtual Pins), BlynkTimer","link":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/blynk-piny-virtualne-virtual-pins-blynktimer\/"}],"_links":{"self":[{"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/posts\/3265","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/comments?post=3265"}],"version-history":[{"count":14,"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/posts\/3265\/revisions"}],"predecessor-version":[{"id":4120,"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/posts\/3265\/revisions\/4120"}],"wp:attachment":[{"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/media?parent=3265"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/categories?post=3265"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/adsl_zapas.dkonto.pl\/index.php\/wp-json\/wp\/v2\/tags?post=3265"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}